Systems and methods for detecting and tracking humans in captured images

ABSTRACT

In some embodiments, apparatuses and methods are provided herein useful to detecting and tracking humans. In some embodiments, there is provided a system for detecting and tracking humans from one image to another image including: a camera; a control circuit configure to: receive a first image; detect a plurality of key body joints of a first human captured on the first image; determine segmentations of the plurality of key body joints to determine one or more body parts of the first human; determine a color distribution map of aggregate pixels associated with each body part of the first human on the first image; and cause a database to store the color distribution map; and a database comprising one or more color distribution map sets each associated with a detected human in a captured image of the camera.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No.63/058,998 filed Jul. 30, 2020 and U.S. Provisional Application No.63/058,981 filed Jul. 30, 2020, both of which are incorporated herein byreference in their entirety.

TECHNICAL FIELD

This invention relates generally to detecting and tracking humans incaptured images and distinguishing a customer from an associate oremployee in the captured images.

BACKGROUND

Generally, a camera in a retail store captures images of a location. Theimages may show humans, carts, animals, and items for sale. An associateof the retail store may monitor in real time the captured images.However, generally, the captured images are stored for later viewingwhen needed. Additionally, an associate viewing the captured images maymanually distinguish a customer from an associate in the capturedimages.

BRIEF DESCRIPTION OF THE DRAWINGS

Disclosed herein are embodiments of systems, apparatuses and methodspertaining to detecting and tracking humans and distinguishing acustomer from an associate or employee from one image to another image.This description includes drawings, wherein:

FIG. 1 illustrates a simplified block diagram of an exemplary system fordetecting and tracking humans and distinguishing a customer from anassociate or employee from one image to another image in accordance withsome embodiments;

FIG. 2 is a simplified illustration of exemplary key body joints inaccordance with some embodiments;

FIG. 3 is a simplified illustration of an exemplary detection of keybody joints in accordance with some embodiments;

FIG. 4 is a simplified illustration of an exemplary segmentation of keybody joints in accordance with some embodiments;

FIG. 5 is a simplified illustration of exemplary segmentations of keybody joints to determine body parts of a human in accordance with someembodiments;

FIG. 6 is a simplified illustration of an exemplary determination of acolor distribution map of a body part in accordance with someembodiments;

FIG. 7 is a simplified illustration of a two-dimensional (2D) graphicalrepresentation of an exemplary color distribution map in accordance withsome embodiments;

FIG. 8 is a simplified illustration of an exemplary matching of colordistribution maps of detected body parts with color distribution maps ofstored/existing/reference body parts in accordance with someembodiments;

FIG. 9 is a simplified illustration of an exemplary matching vector inaccordance with some embodiments;

FIG. 10 is a simplified illustration of an exemplary matchingoptimization of color distribution maps of detected body parts withcolor distribution maps of stored/existing/reference body parts inaccordance with some embodiments;

FIG. 11 is a simplified illustration of an exemplary merging of matchedcolor distribution maps of detected body parts and color distributionmaps of stored/existing/reference body parts in accordance with someembodiments;

FIG. 12 is a simplified illustration of an exemplary merging of matchedhistogram maps of detected body parts and histogram maps ofstored/existing/reference body parts in accordance with someembodiments;

FIG. 13 is a simplified illustration of an exemplary detecting andtracking humans and distinguishing a customer from an associate oremployee from one image to another image in accordance with someembodiments;

FIG. 14 shows a flow diagram of an exemplary process of detecting andtracking humans from one image to another image in accordance with someembodiments;

FIG. 15 shows a flow diagram of an exemplary process of distinguishing acustomer from an associate or employee from one image to another imagein accordance with some embodiments;

FIG. 16 illustrates an exemplary system for use in implementing methods,techniques, devices, apparatuses, systems, servers, sources fordetecting and tracking humans and distinguishing a customer from anassociate or employee from one image to another image, in accordancewith some embodiments; and

FIG. 17 is a simplified illustration of an exemplary matchingoptimization of color distribution maps of detected humans with colordistribution maps of stored/existing/reference humans in accordance withsome embodiments.

Elements in the figures are illustrated for simplicity and clarity andhave not necessarily been drawn to scale. For example, the dimensionsand/or relative positioning of some of the elements in the figures maybe exaggerated relative to other elements to help to improveunderstanding of various embodiments of the present invention. Also,common but well-understood elements that are useful or necessary in acommercially feasible embodiment are often not depicted in order tofacilitate a less obstructed view of these various embodiments of thepresent invention. Certain actions and/or steps may be described ordepicted in a particular order of occurrence while those skilled in theart will understand that such specificity with respect to sequence isnot actually required. The terms and expressions used herein have theordinary technical meaning as is accorded to such terms and expressionsby persons skilled in the technical field as set forth above exceptwhere different specific meanings have otherwise been set forth herein.

DETAILED DESCRIPTION

Generally speaking, pursuant to various embodiments, systems,apparatuses and methods are provided herein useful for detecting andtracking humans at a retail store. In some embodiments, a system fordetecting and tracking humans from one image to another image capturedby a camera at a retail store include a camera configured to capture, ata first time, a first image of an area at a retail store. By oneapproach, the system may include a control circuit coupled to thecamera. In one configuration, the control circuit may receive the firstimage. In another configuration, the control circuit may detect aplurality of key body joints of a first human captured on the firstimage. For example, each of the plurality of key body joints may be apoint of interest along a skeletal anatomy of the first human. Inanother configuration, the control circuit may determine segmentationsof the plurality of key body joints of the first human to determine oneor more body parts of the first human in response to the detection ofthe plurality of key body joints. In another configuration, the controlcircuit may determine a color distribution map of aggregate pixelsassociated with each body part of the one or more body parts of thefirst human on the first image. In one scenario, each color distributionmap may be used by the control circuit to differentiate between thefirst human and another human in the first image. In yet anotherconfiguration, the control circuit may cause a database to store thecolor distribution map for each body part of the first human on thefirst image. By one approach, the system may include the databasecoupled to the control circuit. For example, the database may includeone or more color distribution map sets each associated with a detectedhuman in a captured image of the camera.

In some embodiments, a method for detecting and tracking humans from oneimage to another image captured by a camera at a retail store includescapturing, at a first time by a camera, a first image of an area at aretail store. By one approach, the method may include receiving, by acontrol circuit coupled to the camera, the first image. Alternatively orin addition to, the method may include detecting, by the controlcircuit, a plurality of key body joints of a first human captured on thefirst image. For example, each of the plurality of key body joints maybe a point of interest along a skeletal anatomy of the first human. Inone configuration, the method may include, in response to the detectionof the plurality of key body joints, determining segmentations of theplurality of key body joints of the first human to determine one or morebody parts of the first human. Alternatively or in addition to, themethod may include determining, by the control circuit, a colordistribution map of aggregate pixels associated with each body part ofthe one or more body parts of the first human on the first image. Forexample, each color distribution map may be used by the control circuitto differentiate between the first human and another human in the firstimage. By one approach, the method may include causing, by the controlcircuit, a database to store the color distribution map for each bodypart of the first human on the first image. In one scenario, thedatabase may include one or more color distribution map sets eachassociated with a detected human in a captured image of the camera.

In some embodiments, a system for automatic identification of a retailassociate on an image captured by a camera via analysis of colordistribution maps associated with aggregate pixels of each body part ofa detected human in the captured image at an area of a retail storecomprising a camera capturing, at a first time, a first image of an areaat a retail store. In some embodiments, the system includes a controlcircuit coupled to the camera. By one approach, the control circuit mayreceive the first image. In some embodiments, the control circuitdetects a plurality of key body joints for each human captured on thefirst image. For example, each of the plurality of key body joints is apoint of interest along a human skeletal anatomy. In some embodiments,the control circuit, in response to the detection of the plurality ofkey body joints, determines segmentations of the plurality of key bodyjoints to determine one or more body parts of a corresponding human. Insome embodiments, the control circuit determines a color distributionmap of aggregate pixels associated with each body part of the one ormore body parts of the corresponding human on the first image. Forexample, each color distribution map may be used by the control circuitto differentiate between one human from another human in the firstimage. In some embodiments, the control circuit may calculate, for eachhuman in the first image, a correlation value for each colordistribution map associated with each body part of the correspondinghuman on the first image with a stored color distribution map for eachbody part of a reference retail associate to identify whether thecorresponding human is a retail associate of the retail store. In someembodiments, the control circuit may determine that the correspondinghuman in the first image is the retail associate of the retail storebased on a determination that each calculated correlation value is equalto at least a correlation threshold.

In some embodiments, a method for automatic identification of a retailassociate on an image captured by a camera via analysis of colordistribution maps associated with aggregate pixels of each body part ofa detected human in the captured image at an area of a retail storecomprising capturing, at a first time by a camera, a first image of anarea at a retail store. By one approach, the method may includereceiving, by a control circuit coupled to the camera, the first image.In some embodiments, the method includes detecting, by the controlcircuit, a plurality of key body joints for each human captured on thefirst image. By one approach, each of the plurality of key body jointsis a point of interest along a human skeletal anatomy. In someembodiments, the method includes, in response to the detection of theplurality of key body joints, determining segmentations of the pluralityof key body joints to determine one or more body parts of thecorresponding human. In some embodiments, the method includesdetermining, by the control circuit, a color distribution map ofaggregate pixels associated with each body part of the one or more bodyparts of the corresponding human on the first image. By one approach,each color distribution map may be used by the control circuit todifferentiate between one human from another human in the first image.In some embodiments, the method may include calculating, by the controlcircuit and for each human in the first image, a correlation value foreach color distribution map associated with each body part of thecorresponding human on the first image with a stored color distributionmap for each body part of a reference retail associate to identifywhether the corresponding human is a retail associate of the retailstore. In some embodiments, the method may include determining, by thecontrol circuit, that the corresponding human in the first image is theretail associate of the retail store based on a determination that eachcalculated correlation value is equal to at least a correlationthreshold.

To illustrate, FIGS. 1 through 17 are described below. FIG. 1illustrates a simplified block diagram of an exemplary system 100 fordetecting and tracking humans and distinguishing a customer from anassociate or employee from one image to another image in accordance withsome embodiments. By one approach, the system 100 includes one or morecameras 104. In one example, the camera 104 may capture, at a firsttime, one or more images 108 of an area at a retail store. In anotherexample, a plurality of cameras is distributed throughout the retailstore. In such an example, each camera is assigned to capture images ofa particular area of the retail store. In one configuration, the camera104 may include a box camera, a dome camera, a PTZ camera, a bulletcamera, an IP camera, a day/night camera, a thermal camera, a wirelessIP camera, and/or a closed-circuit television (CCTV) camera. In anotherconfiguration, an area of a retail store may include an exit, anentrance, an aisle, a bakery area, a frozen area, a customer servicearea, a food area, a produce area, a meat area, and/or a refrigeratedarea, to name a few.

In some embodiments, the system 100 includes one or more controlcircuits 102. In one configuration, a control circuit 102 may include acomputer, a server, a processor, a central processing unit, anelectronic circuitry within a computer that executes instructions thatmake up a computer program, a distributed computing network, a cloudcomputing network, a microprocessor, an electronic device includingelectrical components, and/or the like. Alternatively or in addition to,the system 100 may include a database 106. For example, the database 106may include a random access memory, a read only memory, a memorystorage, a volatile memory, a non-volatile memory, a solid-state drive,a hard disk drive, a cloud-storage system, and/or any commerciallyavailable electronic storage devices capable of storing computer dataelectronically. In such an implementation, the database 106 may be localto the retail store and/or accessed via a wired and/or wireless network(e.g., Internet, WiFi, LAN, WAN, etc.). By one approach, the controlcircuit 102 may receive a first image from the camera 104. In such anapproach, the control circuit 102 may process the first image to detecta plurality of key body joints 110 of a first human captured on thefirst image. In some embodiments, in response to the detection of theplurality of key body joints 110, the control circuit 102 may determinesegmentations of the plurality of key body joints 112 of the first humanto determine one or more body parts of the first human.

In some embodiments, the detection 110 and/or the segmentation 112 of aplurality of key body joints may be executed by the control circuit 102simultaneously, in series, and/or in parallel. In some embodiments, thecontrol circuit 102 may perform detection 110 and/or segmentation 112 ofa plurality of key body joints using publicly and/or commerciallyavailable digital and/or image processing techniques, such as top-downestimation techniques, bottom-up techniques, pose estimation techniquesusing Part Affinity Field (PAF) mapping, and/or human pose estimationvia deep neural networks, to name a few. In an illustrative non-limitingexample, the detection 110 and/or segmentation 112 of a plurality of keybody joints may include the algorithm described in the online articletitled “NeuroNuggets: Understanding Human Poses in Real-Time” by SergeyNikolenko on Apr. 24, 2018(https://medium.com/neuromation-blog/neuronuggets-understanding-human-poses-in-real-time-b73cb74b3818)and/or similar pose estimation techniques that are publicly and/orcommercially available, the contents of which are hereby incorporated intheir entirety by this reference. By one approach, once the key bodyjoints are detected and segmented into body parts, the control circuit102 determines a color distribution/histogram map 116 of aggregatepixels associated with each body part of the first human. For example,the control circuit 102 determines the color distribution of the pixelscorresponding to each body part in an image. In such an example, thecontrol circuit 102 may determine which color does each pixel in thecorresponding body part in the image corresponds. Alternatively or inaddition to, the control circuit 102 may create and/or cause to store acolor distribution map corresponding to the determined colors of theaggregate pixels in the corresponding body part. By one approach, eachcolor distribution map may be used by the control circuit 102 todifferentiate between a human in one image and another human in asubsequent image. By another approach, the color distribution map may beused by the control circuit 102 to differentiate between and/or trackhumans in one or more subsequent images. For example, based on a colordistribution map of a body part and/or one or more color distributionmaps of a plurality of body parts, the control circuit 102 may determinethat a human in a previous image is the same human in a subsequentimage. To illustrate, the control circuit 102 may access theexisting/stored/reference histogram/distribution maps 118 stored in thedatabase 106. These existing/stored/reference histogram/distributionmaps may be previously determined by the control circuit 102 in one ormore previous images. By another approach, the existing/stored/referencehistogram/distribution maps may have been previously determined in aprevious image captured at a period of time (e.g., a millisecond, acouple of milliseconds, longer than a millisecond, a second, longer thana second, etc.) prior to capturing a subsequent image and/or a currentimage. The existing/stored/reference histogram/distribution maps 118 maybe associated with a plurality of body parts and/or a plurality ofdetected and/or segmented key body joints.

In some embodiments, a color distribution map determined by the controlcircuit 102 in a current image may be matched and/or compared 120 withone or more of the existing/stored/reference histogram/distribution maps118. For example, a color distribution map corresponding to a body partin a current image may be matched and/or compared 120 with one or moreof the existing/stored/reference histogram/distribution maps 118associated with one or more corresponding body parts. In someembodiments, the control circuit 102 may perform matching optimization122. By one approach, in the matching optimization 122, a colordistribution map of a particular body part in a current image may bematched and/or compared 120 with each of the existing/stored/referencehistogram/distribution maps 118 corresponding to a plurality of bodyparts to determine which one of the existing/stored/referencehistogram/distribution maps 118 substantially matches with a colordistribution map corresponding to a body part in a current image. Insome embodiments, when a set of color distribution maps corresponding tobody parts of a human in a current image substantially matches and/ormatches within a particular threshold with a set of color distributionmaps of the existing/stored/reference histogram/distribution maps 118,the control circuit 102 may determine that the previously detected humanassociated with the set of color distribution maps of theexisting/stored/reference histogram/distribution maps 118 are the samehuman associated with the set of color distribution maps correspondingto body parts of the human in the current image. In some embodiments,upon a determination that the human in a current image is the same asthe previously detected human in a previously captured image, thecontrol circuit 102 may merge and/or update 114 the set of colordistribution maps of the existing/stored/referencehistogram/distribution maps 118 corresponding to body parts of thepreviously detected human in the previously captured image with the setof color distribution maps corresponding to body parts of the currentlydetected human in the current image. Thus, the control circuit 102 maydetermine with a particular confidence whether a particular human is insubsequently captured one or more images even if those images weresubsequently captured between a time period that is longer thanconventionally acceptable to conventional technologies that detect andtrack humans in captured images. For example, the camera 104 may be setto capture each image every second and/or every multiple seconds (e.g.,2 seconds, 3 seconds, 4 seconds, 5 seconds, etc.). In some embodiments,although images may be captured every multiple seconds, the controlcircuit 102 may determine whether one or more of the detected humans ina previously captured image are in the currently captured image eventhough the two images were captured multiple seconds apart based on amatching of the color distribution maps of each body part in thepreviously captured image and the currently captured image. As such, theuse of the color distribution maps as described herein provide multiplebenefits and/or improvements in the detection and/or tracking of humansin captured images. By one approach, the control circuit 102 may processimages less frequently than conventionally done to detect and/or trackhumans in captured images. By another approach, the processing powerrequired to detect and/or track humans may be lessened and/or decreased.By another approach, the detection and/or tracking of humans may beperformed with a particular confidence level and/or fine-tuned based ona level of desired performance. By another approach, the use of thecolor distribution maps provides a better occlusion detection by thecontrol circuit 102. Thus, the control circuit 102 may still identify ahuman that is occluded by another human in an image even though only aportion of the body parts of the occluded human may be shown in theimage. Additionally, the use of the color distribution maps as describedherein provide a benefit of automatically distinguishing a customer froman associate/employee from one image to another image. Those skilled inthe art will recognize a wide variety of benefits and/or improvementsprovided with respect to the described embodiments herein withoutdeparting from the scope of the invention, and that such benefits and/orimprovements are to be viewed as being within the ambit of the inventiveconcept.

FIG. 2 is a simplified illustration of exemplary key body joints 200 inaccordance with some embodiments. By one approach, the key body jointsdetection 110 in FIG. 1 may result in the detection of key body jointsshown in FIG. 2. For example, a number of key body joints of a detectedhuman are shown in FIG. 2, such as Left Shoulder 202, Left Elbow 206,and Left Wrist 204, to name a few. In FIG. 2, the letter R and L infront of a particular body part corresponds to “right” and “left”respectively. For example, RHip corresponds to right hip while LHipcorresponds to left hip. In some embodiments, each of the key bodyjoints may correspond to a point of interest along a skeletal anatomy ofa human, as shown in FIG. 2. In another illustrative non-limitingexample, FIG. 3 is a simplified illustration of an exemplary detectionof key body joints 300 in accordance with some embodiments. For example,FIG. 3 illustrates the detected key body joints of two humans 302, 310in a captured image. In some embodiments, three key body joints aredetected by the control circuit 102 for each human 302, 310. Forexample, a left shoulder 304, a left elbow 306, and a left wrist 308 aredetected for the first human 302. In another example, a left shoulder312, a left elbow 314, and a left wrist 316 are detected for the secondhuman 310.

FIG. 4 is a simplified illustration of an exemplary segmentation of keybody joints 400 in accordance with some embodiments. In an illustrativenon-limiting example, as shown in FIG. 4, a left forearm 402 of thefirst human 302 of FIG. 3 may be determined based on the segmentation ofthe left elbow 306 and the left wrist 308. In some embodiments, thesegmentations of key body joints in FIG. 4 may correspond to thesegmentation 112 of key body joints in FIG. 1. For example, the controlcircuit 102 may determine segmentations 112 of key body joints in animage to determine one or more body parts that may be associated withone or more humans captured in the image. In such an example, asegmentation of key body joints may correspond to determining which twoor more groupings of key body joints form one or more body partsassociated with a human in a captured image. For example, body parts mayinclude a pair of feet, a head, a hand, a hip, a pair of arms, a torso,a pair of thighs, a pair of entire legs, a neck, a pair of forearms, anda shoulder, to name a few. In such an example, two key body joints, suchas a wrist and an elbow, may be segmented to form a forearm of a humanin a captured image, for example, the left forearm 402 in FIG. 4. Insome embodiments, segmentation of key body joint to form and/ordetermine a body part, such as the left forearm 402, by the controlcircuit 102 may be based in part on Part Affinity Field (PAF) mappingtechniques.

FIG. 5 is a simplified illustration of exemplary segmentations 500 ofkey body joints in accordance with some embodiments. In an illustrativenon-limiting example in FIG. 5, the control circuit 102 may determineeach key body joints and perform segmentations of the determined keybody joints to identify different body parts of a human 502 (e.g.,thigh, forearm, head, forearm, torso, etc.). For example, the body partsof the human 502 may be segmented by the control circuit 102. Forexample, two key body joints, such as a knee (e.g., a left knee 510, aright knee 512) and a hip (e.g., a left side hip 508, a right side hip514) may be segmented to determine and/or identify a body part, such asa thigh of the human 502 (e.g., a left thigh 504, a right thigh 506,respectively). In another example, the human 502 may correspond to thehuman 302 in FIGS. 3 and 4. In such an example, a body part, such as theleft forearm 402, may be identified by the control circuit 102 asillustrated by a dotted rectangular box including the left elbow 306 andthe left wrist 308.

In some embodiments, the captured images may include one or more imageresolutions. By one approach, a number of pixels in an image may dependon the resolution associated with the camera 104 that captured theimage. The captured images are pixelated and the size of each pixeldepends on the resolution of the camera 104. As such, each of thedetermined body parts is associated with a particular set of aggregatepixels. For example, each identified body part in the segmentations 500of FIG. 5 may be associated with a particular set of aggregate pixels.In some embodiments, the control circuit 102 may determine a colordistribution map of aggregate pixels associated with each determinedand/or identified body part. For example, the human 502 in FIG. 5 may bewearing clothes with different colors and/or shade of colors. As such,in an image capture of the human 502, the left thigh 504 may beassociated with a first set of aggregate pixels while the left forearm402 may be associated with a second set of aggregate pixels. Thus, eachbody part of a human in an image may correspond to a particular set ofaggregate pixels. By one approach, each set of aggregate pixels may beassociated with a particular color distribution map particular to thebody part corresponding to the aggregate pixels.

In an illustrative non-limiting example, the control circuit 102 maydetermine a color distribution map of the second set of aggregate pixelsassociated with the left forearm 402. In such an embodiment, the controlcircuit 102 may determine the color distribution of red, green, and/orblue colors and/or any combination of one or more primary colors,secondary colors, tertiary colors, and so forth in the left forearm 402.In another illustrative non-limiting example, the color distribution mapof the forearm of the human 302 of FIG. 3 and the color distribution mapof the forearm of the human 310 of FIG. 3 are different, such that thecolor distribution of red, green, and/or blue colors is different forthe human 302 as compared to the human 310 due in part to differences intheir skin complexion. In another example, the color distribution ofeach body part of one human may be different compared to the colordistribution of each corresponding body part of another human because ofthe clothes, jewelries, accessories, and/or watches each may be wearing.In yet another example, each human in an image may have substantiallydifferent overall color distribution when compared to another human inthe same and/or another image because each human would be wearing adifferent combination of clothing, jewelries, watches, and/oraccessories that are of different types, colors, and/or shadings ofcolors, thereby rendering his/her own total distribution of red, green,and/or blue colors and/or any combination of colors different. Thus, forexample, even if two detected humans in an image are wearing the sametype of jeans but wearing different shirts (e.g., length, type, color,etc.), the control circuit 102 may determine that a left thigh of thefirst human has substantially the same color distribution map as theleft thigh of the second human. However, the control circuit 102 mayalso determine that the arm of the first human has different colordistribution map compared to the arm of the second human due to the factthat they are wearing different shirts. As such, the overall colordistribution map of the body parts of the first human is different fromthe overall color distribution map of the body parts of the second humanbecause of at least the difference in the shirt that each of them wears.

In some embodiments, the control circuit 102 may evaluate each pixeland/or determine the one or more colors that correspond to the pixel. Insome embodiments, each pixel may be of a size where it may substantiallycorrespond to just one particular color. In an illustrative non-limitingexample, FIG. 6 is a simplified illustration of an exemplarydetermination of a color distribution map 600 of a body part. In anillustrative non-limiting example and for simplicity purposes, let usconsider that a body part 602 corresponds to the left forearm 402 of thehuman 302 of FIG. 4. The body part 602 may be pixelated into 4 pixels:602A, 602B, 602C, 602D. Pixels 602A and 602B may be associated with afirst color 604. Pixel 602C may be associated with a third color 606.Pixel 602D may be associated with a fifth color 608. In someembodiments, each color (e.g., the first color 604, the third color 606,the fifth color 608, etc.) may be represented by a range of valuesbetween 0 through 255 and/or any range of values to effectively define acolor in a color space. In some embodiments, in an RGB color space, acolor may be represented by a value based on a particular colorintensity (e.g., how red is a particular pixel). By one approach, inaddition to the RGB color space, the color space may include HSL (hue,saturation, lightness), HSV (hue, saturation, value), and CIELAB colorspace (L for lightness from black to white, A from green to red, B fromblue to yellow). In an illustrative non-limiting example and forsimplicity of explanation, the first color 604 may correspond to a redcolor. In another embodiments, the third color 606 may correspond to agreen color. In another embodiments, the fifth color 608 may correspondto a blue color. In yet another embodiments, a second color 622 maycorrespond to a yellow color. In yet another embodiments, a fourth color624 may correspond to an orange color. By one approach, to determine acolor distribution map 626 of the body part 602, the control circuit 102may determine the associated color of each pixel. In some embodiments,the control circuit 102 may determine the total number of pixels thatare associated with each determined color. For example, the colordistribution map 626 may show that the first color 604 has a first totalnumber of pixels 610, the second color 622 and the fourth color 624 havezero corresponding number of pixels, the third color 606 has a thirdtotal number of pixels 612, and the fifth color 608 has a fifth totalnumber of pixels 614. In some embodiments, the control circuit 102 maynormalize all counted total number of pixels for each color. As shown inFIG. 6, for example, the color distribution map 626 may be transformedinto a normalize color distribution map 628. In some embodiments, thecontrol circuit 102 may sum the total number of pixels and determine,for each color 604, 622, 606, 624, 608, the corresponding normalizevalue for the number of pixels associated with the color relative to thesum of the total number of pixels associated with the body part 602. Forexample, the control circuit 102 may divide the total number of pixelsof a particular color by the sum to get the normalize value for thatparticular color. For example, a first normalize value 616 is associatedwith the first color 604, a third normalize value 618 is associated withthe third color 606, and a fifth normalize value 620 is associated withthe fifth color 608. In some embodiments, the control circuit 102 mayrepresent the color distribution map 626 or the normalize colordistribution map 628 as a color histogram as shown in FIG. 6.

In some embodiments, a color distribution map of a body part may berepresented as a one-dimensional (1D) graphical representation 700 asillustrated in FIG. 7. In some embodiments, a color distribution map ofa body part may be represented as a two-dimensional (2D) and/or athree-dimensional (3D) graphical representations (not shown). In someembodiments, each color distribution map of each body part of a humanmay be stored in the database 106. In some embodiments, the storage ofthe color distribution maps comprises a matrix configuration, datacorresponding to the color distribution map, and/or any database formatand/or configuration that is capable to be managed, accessed, andupdated. In some embodiments, the database 106 may store each colordistribution map for each body part and/or associate each body part to acorresponding human, and/or corresponding image. In some embodiments,the database 106 may store data corresponding to the normalized colordistribution map and/or total number of pixels associated with thenormalized color distribution. In an illustrative non-limiting example,the 1D graphical representation 700 is described. In some embodiments, acolor distribution map of a body part may be represented as a 2Dgraphical representation and/or a 3D graphical representation. Thoseskilled in the art will recognize that a color distribution map of abody part may be represented in one or more various graphicalrepresentations without departing from the scope of the invention andare to be viewed as being within the ambit of the inventive concept. Insome embodiments, the 1D graphical representation 700 may include anx-axis 702 (e.g., number of pixels) and a y-axis 704 (e.g., colorintensity). For example, FIG. 7 illustrates an example colordistribution map of the first color 604, the third color 606, and thefifth color 608. As illustrated in FIG. 7, the color distribution foreach of the first color 604, the third color 606, and the fifth color608 varies based on the location of the pixels in the captured image. Inthis illustrative non-limiting example, at about location 50 of theimage, the number of pixels associated with the first color 604 issubstantially greater than those number of pixels associated with thethird color 606 and the fifth color 608. As such, when the colordistribution map of the body part represented by the 2D graphicalrepresentation 700 is compared to another color distribution map of acorresponding body part and that the resulting comparison provided ahigh correlation (e.g., a correlation value of equal to and/or greaterthan a predetermined threshold value, for example, 0.8 or any value setto be the threshold value), the control circuit 102 may determine thatthe compared body parts belonged to the same human. Alternatively or inaddition to, if the comparison resulted in a low correlation (e.g., acorrelation value of less than and/or equal to a predetermined thresholdvalue), the control circuit 102 may determine that the compared bodyparts belonged to different humans. Thus, the control circuit 102determines a color distribution map of aggregate pixels associated witheach body part associated with each human in each of the captured imagesand compares each determined color distribution of one image to each ofthe determined color distributions of another image to determine whethera detected human in one image is still captured in subsequent images. Assuch, the control circuit 102 may determine whether a particular humanis in an area within a field of view of the camera that captured theimages. In some embodiments, the control circuit 102 may determine aperiod of time that the particular human remained in the area. In someembodiments, the control circuit 102 may use the normalized colordistribution maps to determine and/or calculate a correspondingcorrelation value.

FIG. 8 is a simplified illustration of an exemplary matching 800 ofdetected and/or identified body parts with stored/existing/referencebody parts in accordance with some embodiments. By one approach, theexemplary matching 800 may correspond to the matching 120 of FIG. 1. Inan illustrative non-limiting example, the matching 800 illustrates thata set of color distribution maps 802 of detected and/or identified bodyparts is compared and/or matched to a plurality of a set of colordistribution maps 804, 806 associated with a plurality of detectedhumans (e.g., ID 1 and ID N). In an illustrative non-limiting example,the control circuit 102 may compare and/or match a color distributionmap 812 of the set of color distribution maps 802 to each colordistribution map of the corresponding body part (e.g., an arm) in thestored/existing/reference color distribution maps in the database 106,such as a color distribution map 808 of the set of color distributionmaps 804 of a human associated with ID 1 and a color distribution map810 of the set of color distribution maps 806 of a human associated withID N.

In some embodiments, in comparing and/or matching the color distributionmaps of body parts, the control circuit 102 may determine a correlationvalue for each comparison of body parts. To illustrate, FIG. 9 is asimplified illustration of a resulting exemplary matching vector 900 inaccordance with some embodiments. FIG. 9 illustrates that for eachcomparison and/or matching between a set of color distribution maps 902associated with a human detected in a current image and astored/existing/reference set of color distribution maps 906 associatedwith a human detected in a previous image, the control circuit 102 maydetermine a corresponding correlation value. For example, a colordistribution map 904 corresponding to an arm in the set of colordistribution maps 902 is compared/matched by the control circuit 102with a color distribution map 908 associated with a corresponding bodypart (e.g., an arm) in the set of color distribution maps 906 bydetermining a correlation value 910. In response to determining thecorrelation value for each corresponding body part of the set of colordistribution maps 902 and the stored/existing/reference set of colordistribution maps 906, the control circuit 102 may determine a matchingvector 912. For example, the matching vector 912 may include thedetermined correlation value of each compared/matched body part, such asthe correlation value 910 of the arm.

In some embodiments, the control circuit 102 may determine whether eachcorrelation value in a matching vector is at least equal to acorrelation threshold to determine that a detected human in a currentimage is the same human in a previous image. Alternatively or inaddition to, the control circuit 102 may determine whether a thresholdnumber of the correlation values in the matching vector is at leastequal to the correlation threshold to determine that a detected human ina current image is the same human in a previous image. For example, thecontrol circuit 102 may determine a color distribution map of aggregatepixels associated with each body part a human on a current image. Insome embodiments, the control circuit 102 may calculate a correlationvalue for each color distribution map associated with each body part ofthe human in the current image with each color distribution mapassociated with each corresponding body part of a human detected on aprevious image. In response, the control circuit 102 may determine thatthe human in the current image is the same human in the previous imagebased on a determination that each calculated correlation value is equalto at least a correlation threshold. Alternatively or in addition to,the control circuit 102 may determine that the human in the currentimage is the same human in the previous image based on a determinationthat a threshold number of the correlation values associated with eachindividual distribution map of the set of color distribution maps isequal to at least a correlation threshold. In some embodiments, thecontrol circuit 102 may cause the database 106 to update the previouslystored/existing/reference color distribution map set by combining thestored/existing/reference color distribution map set with the colordistribution map set of the human in the current image in response tothe determination that the human in the current image is the same humanin the previous image.

In some embodiments, the control circuit 102 may determine that thehuman in the current image is not the same human in the previous imagebased on a determination that one or more of calculated correlationvalues are not greater than and/or equal to at least the correlationthreshold. In such an embodiment, the control circuit 102 may cause thedatabase 106 to store a color distribution map corresponding to eachbody part of the human in the current image and/or associate each colordistribution map corresponding to each body part to the human in thecurrent image. For example, the set of color distribution mapscorresponding to the body parts of the human in the current image may beused for comparison/matching by the control circuit 102 with a set ofcolor distribution maps of a human in a subsequent image to determinewhether the human in the current image is detected and/or tracked in thesubsequent image.

In some embodiments, the control circuit 102 may determine and/orcalculate a correlation value between each color distribution mapassociated with each body part and a color distribution map associatedwith each stored/existing/reference body part in the database 106. Toillustrate, FIG. 10 is a simplified illustration of an exemplarymatching optimization 1000 of detected body parts withstored/existing/reference body parts in accordance with someembodiments. By one approach, the matching optimization 1000 maycorrespond to the matching optimization 122 of FIG. 1. To illustrate, a1^(st) detected body part 1002, a 2^(nd) detected body part 1012, and aNth detected body part 1004 are shown in FIG. 10. In an illustrativenon-limiting example, these body parts are body parts that may have beendetermined based on the key body joints detection 110 and/or thesegmentation of key body joints 112 associated with a human in a currentimage captured by the camera 104. In some embodiments, a 1^(st) existingbody part 1006, a 2^(nd) existing body part 1008, and a Nth existingbody part 1010 are stored in the database 106.

By one approach, the control circuit 102 may determine and/or calculatea first correlation value between a color distribution map associatedwith the 1^(st) detected body part 1002 and a color distribution mapassociated with the 1^(st) existing body part 1006. By another approach,the control circuit 102 may determine and/or calculate a secondcorrelation value between the color distribution map associated with the1^(st) detected body part 1002 and a color distribution map associatedwith the 2^(nd) existing body part 1008. By another approach, thecontrol circuit 102 may determine and/or calculate a third correlationvalue between the color distribution map associated with the 1^(st)detected body part 1002 and a color distribution map associated with the2^(nd) existing body part 1008. Similarly, a corresponding correlationvalue maybe determined and/or calculated for the 2^(nd) detected bodypart 1012 and each of the 1^(st) existing body part 1006, the 2^(nd)existing body part 1008, and the Nth existing body part 1010. In someembodiments, another corresponding correlation value maybe determinedand/or calculated for the Nth detected body part 1004 and each of the1^(st) existing body part 1006, the 2^(nd) existing body part 1008, andthe Nth existing body part 1010. In some embodiments, in response todetermining a correlation value, the control circuit 102 may determinewhether the correlation value is at least equal to and/or greater than acorrelation threshold. For example, the correlation threshold mayinclude a predetermined value indicating a high likelihood that thecompared and/or matched body parts are the same body part belonging to aparticular human. Thus, enabling the control circuit 102 to track one ormore humans from one image to another image. For example, in response tothe determination of the first correlation value, the second correlationvalue, and the third correlation value, the control circuit 102 maydetermine which one of the correlation values is at least equal toand/or greater than the correlation threshold to determine whether thereis a matched between the compared body parts. Continuing theillustrative non-limiting example in FIG. 10, the control circuit 102may determine that the 1^(st) detected body part 1002 matches with the2^(nd) existing body part 1008 based on the determination that thesecond correlation value is at least equal to and/or greater than thecorrelation threshold. As shown in FIG. 10, the control circuit 102 maydetermine that the 2^(nd) detected body part 1012 matches with the Nthexisting body part 1010 while the Nth detected body part 1004 matcheswith the 1^(st) existing body part 1006 based on a determination thateach of these matches corresponds to a correlation value that is atleast equal to and/or greater than a correlation threshold.

In some embodiments, in response to the control circuit 102 determiningthat there is a match between color distribution maps and/or a set ofcolor distribution maps of detected and/or identified body parts andexisting/stored color distribution maps and/or a set ofstored/existing/reference color distribution maps ofstored/existing/reference body parts in the database 106, the controlcircuit 102 may update the stored/existing/reference color distributionmaps and/or the set of the stored/existing/reference color distributionmaps with the color distribution maps and/or the set of colordistribution maps of the detected and/or identified body parts. FIG. 11is a simplified illustration of an exemplary merging 1100 of matcheddetected body parts and stored/existing/reference body parts inaccordance with some embodiments. In some embodiments, the merging 1100may correspond to the color histogram/distribution merging 114 ofFIG. 1. In some embodiments, the control circuit 102 may determine colordistribution maps and/or a set of color distribution maps 1102 ofdetected body parts of a human in a current image are a match with colordistribution maps and/or a set of color distribution maps 1104 ofstored/existing/reference body parts associated with a human ID 1 in aprevious image. In response, the control circuit 102 may merge and/orupdate the color distribution maps and/or the set of color distributionmaps 1102 with the color distribution maps and/or the set of colordistribution maps 1104 resulting in an updated color distribution mapsand/or the set of color distribution maps 1106. In some embodiments, thecontrol circuit 102 may initially denormalize the color distributionmaps to be merged, perform the merging and/or updating as describedherein, and then normalize the updated color distribution map prior tocausing the database 106 to store the normalized updated colordistribution map. By one approach, one of the plurality of benefits ofupdating color distribution maps is that the more pixels accumulate, themore stable the normalized reference color distribution/histogram map,thereby providing a better and/or enhanced identification and/ordetection of an occluded human in an image by the control circuit 102.

In an illustrative non-limiting example, FIG. 12 is a simplifiedillustration of an exemplary merging 1200 of matched histogram maps ofdetected body parts and histogram maps of stored/existing/reference bodyparts in accordance with some embodiments. In some embodiments, thecontrol circuit 102 may evaluate a pixelated image of a body part 1202in a current image captured by the camera 104. For illustration and easeof explanation, the body part 1202 may include four pixels. The fourpixels may include a first color 1204, a second color 1206, a thirdcolor 1208, a fifth color 1210. The distribution of colors (e.g., thecolor distribution map) of the pixelated body part 1202 is representedby a histogram map 1214. The number of pixels associated with each coloris shown in the histogram map 1214. For example, a first number ofpixels 1216 is associated with the first color 1204. In someembodiments, the database 106 may have a stored/existing/reference colordistribution map associated with a body part 1212 of a previouslycaptured image. By one approach, the body part 1212 may include fourpixels having the first color 1204, the third color 1208, and the fifthcolor 1210. The distribution of colors (e.g., the color distributionmap) of the body part 1212 is represented by a histogram map 1218. Thecorresponding number of pixels associated with each color of the bodypart 1212 is shown in the histogram map 1218. For example, a secondnumber of pixels 1220 is associated with the first color 1204.

In some embodiments, in response to a determination that the body part1202 of a current image and the body part 1212 of a previous image isthe same body part, the control circuit 102 may cause the database 106to update the stored/existing/reference color distribution mapassociated with the body part 1212 with the color distribution mapassociated with the body part 1202. For example, in FIG. 12, in responseto the determination that the body part 1202 and the body part 1212 aresubstantially the same body part belonging to the same person, thecontrol circuit 102 causes the database 106 to update thestored/existing/reference histogram map 1218 by combining and/or mergingthe histogram map 1218 with the histogram map 1214 resulting in ahistogram map 1224. By merging, the number of pixels associated witheach color associated with the body part 1212 is updated with the numberof pixels associated with each color associated with the body part 1202.For example, the first color 1204 is now associated with a third numberof pixels 1222 as shown in the histogram map 1224.

In some embodiments, the control circuit 102 may normalize the histogrammap 1224. By one approach, the control circuit 102 may sum the updatednumber of pixels associated with all colors of the body part 1212 andcompare the sum to each number of pixels associated with each color inthe histogram map 1224. For example, the third number of pixels 1222 isdivided by the sum, resulting in a fourth number of pixels 1226. Assuch, a histogram map 1228 shown in FIG. 12 is a normalized histogrammap 1224.

FIG. 13 is a simplified illustration of an exemplary detection andtracking and distinguishing a customer from an associate/employee 1300of humans from one image to another image in accordance with someembodiments. In an illustrative non-limiting example, FIG. 13illustrates a 1^(st) image 1302 captured by a camera 104 at time t, a2^(nd) image 1304 captured by the camera 104 at time t+1, and a 3^(rd)image 1306 captured by the camera 104 at time t+2. By one approach, the1^(st) image 1302 includes a first human 1308, a second human 1310, anda third human 1312. In some embodiments, the camera 104 captures, attime t, the 1^(st) image 1302 of an area at a retail store, at step 1402and step 1502. By one approach, the control circuit 102 may receive, atstep 1404 and step 1504, the 1^(st) image 1302. In some embodiments, thecontrol circuit 102 may detect a plurality of key body joints for eachhuman captured in the 1^(st) image 1302, at step 1406 and step 1506. Forexample, the control circuit 102 may detect a plurality of key bodyjoints for the first human 1308, the second human 1310, and the thirdhuman 1312. Each of the plurality of key body joints is a point ofinterest along a human skeletal anatomy. In some embodiments, thedetection of the plurality of key body joints may correspond to thedetection of key body joints 110 in FIG. 1 as described above. In someembodiments, the key body joints detected may be the key body joints 200shown in FIG. 2. In response to the detection of the plurality of keybody joints, the control circuit 102 may determine segmentations of theplurality of key body joints to determine one or more body parts of acorresponding human, at step 1408 and step 1508. By one approach, thesegmentations may correspond to the segmentation of key body joints 112of FIG. 1. In some embodiments, the segmentations of the key body jointsby the control circuit 102 may be exemplified and/or illustrated by thesegmentations in FIG. 3, FIG. 4, and/or FIG. 5. In an illustrativenon-limiting example, body parts of each of the first human 1308, thesecond human 1310, and the third human 1312 may be determined based onthe detection and/or segmentations described herein. In someembodiments, steps 1406 and 1408 of the method 1400 as shown in FIG. 14may be performed and/or executed simultaneously, in parallel, and/orsubstantially at the same time.

In some embodiments, the control circuit 102 may determine a colordistribution map of aggregate pixels associated with each body part ofeach human on the 1^(st) image 1302, at step 1410 and step 1510. By oneapproach, the determination of the color distribution map may correspondto the color distribution/histogram map 116 of FIG. 1. In someembodiments, each color distribution map may be used by the controlcircuit 102 to differentiate between one human from another human in the1^(st) image 1302 and/or the subsequent images, such as the 2^(nd) image1304 and the 3^(rd) image 1306. For example, the control circuit 102uses the color distribution map associated with the first human 1308 todetermine whether the first human 1308 is captured in the 2nd image 1304and/or the 3^(rd) image 1306. As such, the color distribution map isused to detect and track human from one image to one or more subsequentimages. In some embodiments, the database 106 may store one or morecolor distribution maps and/or a set of color distribution mapsassociated with a retail associate of a retail store. For example, eachretail associate of the retail store may wear a uniform and/or aclothing to differentiate between an associate/employee and a customerof the retail store (e.g., the associate/employee may wear a blue vest).In such an example, the database 106 may store one or more colordistribution maps and/or a set of color distribution maps associatedwith an associate wearing a uniform and/or a particular piece ofclothing. The stored color distribution maps and/or the stored set ofcolor distribution maps may be used as a reference by the controlcircuit 102 to compare and/or match against a color distribution mapand/or a set of color distribution maps determined from a subsequentimage in order to determine whether a detected human in the subsequentimage is an associate or a customer. In some embodiments, the matching120, the existing/stored/reference distribution/histogram map 118, andthe matching optimization 122 of FIG. 1 and/or FIGS. 8-10 may illustratethe comparison and/or matching of a color distribution map with astored/existing/reference color distribution map. In an illustrativenon-limiting example, to identify whether the first human 1308 is aretail associate, the control circuit 102 may calculate a correlationvalue for each color distribution map associated with each body part ofthe first human 1308 with the stored color distribution maps associatedwith one or more body parts of a reference retail associate, at step1512. As such, the control circuit 102 may calculate, for each humancaptured in an image, a correlation value for each color distributionmap associated with each body part of the human with a stored colordistribution map associated with each body part of a reference retailassociate. In some embodiments, the stored color distribution mapsassociated with the one or more body parts of a reference retailassociate may include one or more body parts corresponding to and/orassociated with a uniform worn by a retail associate of the retailstore. For example, a uniform may include a vest, a shirt, a top, and/ora pair of pants worn by each retail associate to distinguish a retailassociate working at the retail store from a customer shopping at theretail store.

In some embodiments, the control circuit 102 may determine, at step1514, that a corresponding human in an image is a retail associate of aretail store based on a determination that each calculated correlationvalue between a color distribution map of each body part of thecorresponding human and a stored/existing/reference color distributionmap of each corresponding body part of a reference retail associate isequal to and/or greater than at least a correlation threshold. Forexample, the control circuit 102 may determine that the first human 1308and the second human 1310 in the 1^(st) image 1302 is not a retailassociate based on a determination that each calculated correlationvalue between a color distribution map of each body part correspondingto each of the first human 1308 and the second human 1310 and thestored/existing/reference color distribution map of each correspondingbody part of the reference retail associate is less than the correlationthreshold. In another example, the control circuit 102 may determinethat the third human 1312 in the 1^(st) image 1302 is a retail associatebased on a determination that each calculated correlation value betweena color distribution map of each body part of the third human 1312 andthe stored/existing/reference color distribution map of eachcorresponding body part of the reference retail associate is equal toand/or greater than at least the correlation threshold.

In some embodiments, the control circuit 102 may determine that thethird human 1312 in the 1^(st) image 1302 is a retail associate based ona determination that the third human 1312 has been captured in aplurality of subsequent images (e.g., the 1^(st) image 1302, the 2^(nd)image 1304 and/or the 3^(rd) image 1306) relative to the other humans(e.g., the first human 1308 and the second human 1310). In someembodiments, in response to the determination that the third human 1312is a retail associate, the control circuit 102 may cause the database106 and/or another database distinct from database 106 to store thecolor distribution map of each body part corresponding to the thirdhuman 1312. In some embodiments, color distribution maps of body partscorresponding to retail associates and/or a retail associate assigned inan exit area may be stored in another database separate from thedatabase 106. In some embodiments, the database 106 may store colordistribution maps of body parts of customers. In another embodiments,another database distinct from the database 106 may store colordistribution maps of body parts corresponding to one or more retailassociates that are assigned to one or more exit areas in a retail storewhile the color distribution maps of body parts corresponding to therest of the retail associates in the retail store are stored in thedatabase 106. In such an embodiment, the determination and/oridentification of whether a detected human is a retail associate or notmay be facilitated since the control circuit 102 may use the storedcolor distribution maps in the other database distinct from the database106 as reference to determine whether a human in a subsequent image isretail associate. For example, a retail associate assigned in an exitarea (e.g., an exit retail associate) may be on a break and when thesame retail associate returns to the exit area, the control circuit mayuse the stored color distribution maps in the other database todetermine whether a detected human in a subsequently captured image ofthe exit area is the same retail associate.

In some embodiments, the control circuit 102 may determine that thesecond human 1310 is near a boundary of the 2^(nd) image 1304 and thatthe second human 1310 is not detected in the 3^(rd) image 1306 and oneor more subsequent images. In response, the control circuit 102 may stoptracking the second human 1310 in subsequent images and determine thatthe second human 1310 has moved out of the area. In some embodiments,the control circuit 102 may remove the stored color distribution maps ofbody parts corresponding to the second human 1310 from the database 106as a result of the determination that the second human 1310 has movedout of the area. In some embodiments, the control circuit 102 may removethe stored color distribution maps of body parts corresponding to thesecond human 1310 from the database 106 in response to not detecting thestored color distribution maps of body parts corresponding to the secondhuman 1310 after a period of time and/or after a number of consecutivecaptured images.

In some embodiments, the control circuit 102 may determine whether ahuman captured in one image is also captured in a subsequent image basedon a determination of color distribution maps of body parts of a humanin a recent image and a matching with color distribution maps ofcorresponding body parts of a human in a previous image. For example,the control circuit 102 may cause, at step 1412, the database 106 tostore a color distribution map for each body part of the first human1308, the second human 1310, and the third human 1312 in the 2^(nd)image 1304. As such, the database 106 may include a set of colordistribution maps for each of the first human 1308, the second human1310, and the third human 1312. In an illustrative non-limiting example,the control circuit 102 may receive the 3^(rd) image 1306. In someembodiments, the control circuit 102 may detect key body jointsassociated with each of the first human 1308 and the third human 1312 inthe 3^(rd) image 1306. In some embodiments, the control circuit 102 maydetermine segmentations of the key body joints for every human detectedin the 3^(rd) image 1306. In some embodiments, the control circuit 102may determine a color distribution map of aggregate pixels for everybody part of each of the first human 1308 and the third human 1312 inthe 3^(rd) image 1306. In some embodiments, the control circuit 102 maycalculate a correlation value for each color distribution map determinedin the 3^(rd) image 1306 with each color distribution map determined andstored in the database 106 for the 2^(nd) image 1304. In someembodiments, the control circuit 102 may determine which of the bodyparts in the 3^(rd) image 1306 match with the body parts in the 2^(nd)image 1304 based on the corresponding calculated correlation value beingequal to and/or greater than a correlation threshold. In someembodiments, the database 106 may store color distribution maps of bodyparts of one or more humans captured in a previous image.

In an illustrative non-limiting example, the control circuit 102 maydetermine that the first human 1308 in the 2^(nd) image 1304 is thehuman 1308 in the 3^(rd) image 1306 based on a determination that eachcalculated correlation value and/or a first predetermined number and/orpercentage of calculated correlation values of the set of colordistribution maps associated with the first human 1308 in the 2^(nd)image 1304 and the human 1308 in the 3^(rd) image 1306 is equal toand/or greater than a correlation threshold. In some embodiments, thecontrol circuit 102 may determine that the second human 1310 in the2^(nd) image 1304 is not the human 1308 in the 3^(rd) image 1306 basedon a determination that each calculated correlation value and/or asecond predetermined number and/or percentage of the set of colordistribution maps between the second human 1310 in the 2^(nd) image 1304and the human 1308 in the 3^(rd) image 1306 is less than and/or notequal to the correlation threshold. In such an embodiment, the controlcircuit 102 may determine that the second human 1310 in the 2^(nd) image1304 is not the human 1312 in the 3^(rd) image 1306 based on adetermination that each calculated correlation value and/or the secondpredetermined number and/or percentage of the set of color distributionmaps between the second human 1310 in the 2^(nd) image 1304 and thehuman 1312 in the 3^(rd) image 1306 is less than and/or not equal to thecorrelation threshold. In response, the control circuit 102 maydetermine that the second human 1310 in the 2^(nd) image 1304 is nolonger in the area as illustrated in the 3^(rd) image 1306 of FIG. 13.

As illustrated above, the control circuit 102 may use the colordistribution map to detect and track one or more humans from one imageto another and/or distinguish one human to another human in an image asbeing an associate/employee or a customer at a retail store. In someembodiments, the control circuit 102 may distinguish which one of theretail associates captured in an image is a retail associate assigned toan area based on a length of time a retail associate has spent at and/orproximate the area. For example, the control circuit 102 may count anumber of captured images that each retail associate is detected anddetermine whether the count is greater than a count threshold. By oneapproach, the count threshold corresponds to a length of time theassociate is at and/or proximate an area. As such, the control circuit102 may distinguish a retail associate assigned to an area from anotherretail associate not assigned in the area based on a determination of alength of time each has spent at and/or proximate the area. In someembodiments, the control circuit 102 may distinguish one human toanother human in an image as being an associate/employee or a customerat a retail store based on the color distribution map as described aboveand on a length of time a retail associate has spent at and/or proximatethe area. In such an embodiment, using the length of time the retailassociate has spent at and/or proximate the area by the control circuit102 may provide an enhanced confidence that the identification of anassociate/employee and/or a customer in a captured image is accuratewithin a threshold of confidence. In some embodiments, the controlcircuit 102 may determine that a detected human captured in an image isnot a retail associate assigned to an area based on a determination thatthe length of time spent at and/or proximate the area by the detectedhuman is equal to and/or less than three seconds, four seconds, fiveseconds, six seconds, and/or a predetermined number of seconds.

In some embodiments, the control circuit 102 may determine a count ofhumans that are not identified as one of retail associates of the retailstore based on a determination that one or more of correspondingcalculated correlation values are less than and/or not equal to at leastthe correlation threshold. For example, the control circuit 102 maydetermine that there are two customers (the first human 1308 and thesecond human 1310) on the 1^(st) image 1302. In another example, thecontrol circuit 102 may determine that there are two customers (thefirst human 1308 and the second human 1310) on the 2^(nd) image 1304. Inyet another example, the control circuit 102 may determine that there isone customer (the first human 1308) on the 3^(rd) image 1306. In someembodiments, in response to a count of humans in a captured imagereaching a count threshold, the control circuit 102 may provide an alertmessage to an electronic device 124 of FIG. 1 associated with a retailstore indicating that an area is currently experiencing a high volume ofcustomer traffic and summoning an additional retail associate to thearea. By one approach, the electronic device 124 may comprise a laptop,a smartphone, a smartwatch, a desktop, a computer, a monitor, and/or anyelectronic device capable of displaying messages to associates/employeesof a retail store.

In some embodiments, the control circuit 102 may determine whether theretail associate is engaged in a particular activity based on adetermination of an angle between at least two of a thigh, a leg, ahand, and a back of one or more body parts of the retail associate. Forexample, the control circuit 102 may estimate human poses of one or moredetected humans in an image based at least in part on the detectionand/or segmentation of key body joints as described herein. By oneapproach, the particular activity may include sitting while interactingwith a customer, talking with another retail associate while there is along customer line, checking customer's receipt prior to leaving aretail store, greeting and/or checking membership identification uponarriving at an entrance of a retail store, and/or activities that may beagainst a retail store's associate/employee policies, to name a few. Insome embodiments, the control circuit 102 may determine an amount oftime the retail associate is engaged in the particular activity over aperiod of time. For example, the control circuit 102 may estimate humanposes for each human in a captured image based at least in part on thedetection and/or segmentation of key body joints and determine a lengthof time each human is detected and/or tracked in subsequent images basedon matching, for every detected human, color distribution maps ofaggregate pixels associated with each body part of the correspondinghuman in a recent captured image with color distribution maps ofaggregate pixels associated with each corresponding body part of humansin a previously captured image. In some embodiments, the control circuit102 may provide an activity report including an amount of time one ormore retail associates are engaged in one or more particular activitiesover a period of time. By one approach, the activity report may beprovided to the electronic device 124. In some embodiments, in responseto a determination that a first retail associate is engaged in aparticular activity, the control circuit 102 may provide a message tothe electronic device 124 associated with a second retail associateindicating that the first retail associate is engaged in the particularactivity.

In some embodiments, the control circuit 102 may determine a count ofhumans that are not identified as one of retail associates/employees ofa retail store over a period of time to determine on average a number ofhumans not identified as a retail associate/employee that linger and/orstay at a given area of the retail store (e.g., how long customers spendwaiting for an associate to check receipts prior to exiting the retailstore, to complete the checkout process, to address questions/issues ofthe customers at a customer service station, etc.). By one approach,humans that are not identified as one of the retail associates areidentified by the control circuit 102 as customers. In some embodiments,to determine a count of customers, the control circuit 102 may determinewhether one or more and/or each calculated correlation value and/or athird predetermined number and/or percentage of calculated correlationvalues of a set of color distribution maps associated with detected bodyparts of customers and a set of stored/reference color distribution mapsassociated with body parts of a reference retail associate are less thanand/or not equal to at least a correlation threshold. In response to adetermination that the detected human are customers, the control circuit102 may determine an amount of time each customer spent standingproximate an area over a period of time prior to leaving a retail storeto determine an average customer wait time.

In some embodiments, the control circuit 102 may initially create a bodylist P_list which may be used to store the people staying in a videoimage and/or frame before the current frame {P_(i1), P_(i2) . . .P_(in)}. By one approach, i₁, i₂, . . . i_(n) represent the assignedidentification (ID) number of each detected human. By another approach,P_(i) represents the color histogram map of the existing body part andthe respective number of accumulated voxels Ai for each body part. Insome embodiments, the control circuit 102 may, for each frame and/orimage, use the bottom-up pose estimation method to estimate the key bodyjoints (e.g., FIG. 2), key body joint connection relation (e.g., FIG.3), and Part Affinity Field (PAF) mapping of each body (e.g., FIG. 4).In some embodiments, for each body part, based on detected key bodyjoints, multiple regions and/or body parts may be extracted (e.g., FIG.5). In some embodiments, for each region and/or body part, a normalizedthree-dimensional (3D) color histogram map may be calculated by thecontrol circuit 102. In some embodiments, the control circuit 102 mayuse the 3D color histogram map to calculate the red green blue color(RGB) distribution of each body part and/or region. For example, thebody part and/or region may include head, shoulder, body, left/rightupper/lower arm, left/right thigh/calf region. In some embodiments, thecontrol circuit 102 may use a rectangular box covering the key points ofhead (e.g., FIG. 5, a head 516) and/or body (e.g., FIG. 5, a head 518)to define the two regions. While for the other body parts and/orregions, the control circuit 102 may use the PAF map as the mask. Insome embodiments, the control circuit 102 may create, for each frameand/or image being processed, a list (B) to store all the detected bodyparts {B₁, B₂ . . . B_(i)} in a frame. In some embodiments, B_(i) mayrepresent the color histogram map of each body part and the respectiveconfidence c_(i) and number of voxels n_(i) for each body part to matchand/or track the body part in list B with the body part in list P. Insome embodiments, the histogram map of each body part may be comparedpart through the functionƒ(b_(i),p_(j))=ƒ(g(cov(b_(i),p_(j)),c_(b)),T_(other)). By one approach,the cov(b_(i),p_(i)) represents the correlation of histogram part bybody part. In some embodiments, c_(b) represents the confidence rate ofeach body part of b_(i) and T_(other) represents other features, such assize, intersection over union (IoU) and location of each body part. Insome embodiments, for each body part P_(i1) in list P, only the bodywith the highest ƒ value in list B may( ) be matched together by thecontrol circuit 102 and the histogram map of each body part of P_(i) maybe updated as:

H _(inew)=(H _(iold) *A _(iold) +H _(bj) *n _(j) *c _(j))/A _(inew)

A _(inew) =A _(iold) ±n _(j) *c _(j)

The matching method ƒ(*) may be based on Hungarian Algorithm and/orgraph based methods. In some embodiments, if a body part in B may not bematched with any item in P, the control circuit 102 may create a newitem with new body part ID and added to P. In some embodiment, adetected human and an existing human matching, as illustrated in FIG.17, may be determined as illustrated below:

Possible pairs {P_(i,j)} P_(i,j) represents pairing value between ithdetected body and jth existing body. The Optimization task is

max(ΣW_(ij)P_(ij)), W_(ij)=0 or 1

Σ_(j=1) ^(M)W_(ij)=1 for ith detected body, Σ_(i=1) ^(N)W_(ij)=1 for jthreference body

P_(ij)=g(V_(ij),IOU,ƒ_(other))P_(ij) correlated with the correlationvector V_(ij), IOU of two body bounding box and other possible features.

Further, the circuits, circuitry, systems, devices, processes, methods,techniques, functionality, services, servers, sources and the likedescribed herein may be utilized, implemented and/or run on manydifferent types of devices and/or systems. FIG. 16 illustrates anexemplary system 1600 that may be used for implementing any of thecomponents, circuits, circuitry, systems, functionality, apparatuses,processes, or devices of the system 100 of FIG. 1, the method 1400 ofFIG. 14, the method 1500 of FIG. 15, and/or other above or belowmentioned systems or devices, or parts of such circuits, circuitry,functionality, systems, apparatuses, processes, or devices. For example,the system 1600 may be used to implement some or all of the system forautomatic identification of a retail associate on an image captured by acamera via analysis of color distribution maps associated with aggregatepixels of each body part of a detected human in the captured image at anarea of a retail store, the system for detecting and tracking humansfrom one image to another image captured by a camera at a retail store,the control circuit 102, the camera(s) 104, the database 106, theelectronic device 124, and/or other such components, circuitry,functionality and/or devices. However, the use of the system 1600 or anyportion thereof is certainly not required.

By way of example, the system 1600 may comprise a processor module (or acontrol circuit) 1612, memory 1614, and one or more communication links,paths, buses or the like 1618. Some embodiments may include one or moreuser interfaces 1616, and/or one or more internal and/or external powersources or supplies 1640. The control circuit 1612 can be implementedthrough one or more processors, microprocessors, central processingunit, logic, local digital storage, firmware, software, and/or othercontrol hardware and/or software, and may be used to execute or assistin executing the steps of the processes, methods, functionality andtechniques described herein, and control various communications,decisions, programs, content, listings, services, interfaces, logging,reporting, etc. Further, in some embodiments, the control circuit 1612can be part of control circuitry and/or a control system 1610, which maybe implemented through one or more processors with access to one or morememory 1614 that can store instructions, code and the like that isimplemented by the control circuit and/or processors to implementintended functionality. In some applications, the control circuit and/ormemory may be distributed over a communications network (e.g., LAN, WAN,Internet) providing distributed and/or redundant processing andfunctionality. Again, the system 1600 may be used to implement one ormore of the above or below, or parts of, components, circuits, systems,processes and the like. For example, the system 1600 may implement thesystem for detecting and tracking humans from one image to another imagecaptured by a camera at a retail store and/or the system for automaticidentification of a retail associate on an image captured by a cameravia analysis of color distribution maps associated with aggregate pixelsof each body part of a detected human in the captured image at an areaof a retail store with the control circuit 102 being the control circuit1612.

The user interface 1616 can allow a user to interact with the system1600 and receive information through the system. In some instances, theuser interface 1616 includes a display 1622 and/or one or more userinputs 1624, such as buttons, touch screen, track ball, keyboard, mouse,etc., which can be part of or wired or wirelessly coupled with thesystem 1600. Typically, the system 1600 further includes one or morecommunication interfaces, ports, transceivers 1620 and the like allowingthe system 1600 to communicate over a communication bus, a distributedcomputer and/or communication network (e.g., a local area network (LAN),the Internet, wide area network (WAN), etc.), communication link 1618,other networks or communication channels with other devices and/or othersuch communications or combination of two or more of such communicationmethods. Further the transceiver 1620 can be configured for wired,wireless, optical, fiber optical cable, satellite, or other suchcommunication configurations or combinations of two or more of suchcommunications. Some embodiments include one or more input/output (I/O)interface 1634 that allow one or more devices to couple with the system1600. The I/O interface can be substantially any relevant port orcombinations of ports, such as but not limited to USB, Ethernet, orother such ports. The I/O interface 1634 can be configured to allowwired and/or wireless communication coupling to external components. Forexample, the I/O interface can provide wired communication and/orwireless communication (e.g., Wi-Fi, Bluetooth, cellular, RF, and/orother such wireless communication), and in some instances may includeany known wired and/or wireless interfacing device, circuit and/orconnecting device, such as but not limited to one or more transmitters,receivers, transceivers, or combination of two or more of such devices.

In some embodiments, the system may include one or more sensors 1626 toprovide information to the system and/or sensor information that iscommunicated to another component, such as the control circuit 102, theelectronic device 124, the database 106, the camera 104, etc. Thesensors can include substantially any relevant sensor, such astemperature sensors, distance measurement sensors (e.g., optical units,sound/ultrasound units, etc.), optical based scanning sensors to senseand read optical patterns (e.g., bar codes), radio frequencyidentification (RFID) tag reader sensors capable of reading RFID tags inproximity to the sensor, and other such sensors. The foregoing examplesare intended to be illustrative and are not intended to convey anexhaustive listing of all possible sensors. Instead, it will beunderstood that these teachings will accommodate sensing any of a widevariety of circumstances in a given application setting.

The system 1600 comprises an example of a control and/or processor-basedsystem with the control circuit 1612. Again, the control circuit 1612can be implemented through one or more processors, controllers, centralprocessing units, logic, software and the like. Further, in someimplementations the control circuit 1612 may provide multiprocessorfunctionality.

The memory 1614, which can be accessed by the control circuit 1612,typically includes one or more processor readable and/or computerreadable media accessed by at least the control circuit 1612, and caninclude volatile and/or nonvolatile media, such as RAM, ROM, EEPROM,flash memory and/or other memory technology. Further, the memory 1614 isshown as internal to the control system 1610; however, the memory 1614can be internal, external or a combination of internal and externalmemory. Similarly, some or all of the memory 1614 can be internal,external or a combination of internal and external memory of the controlcircuit 1612. The external memory can be substantially any relevantmemory such as, but not limited to, solid-state storage devices ordrives, hard drive, one or more of universal serial bus (USB) stick ordrive, flash memory secure digital (SD) card, other memory cards, andother such memory or combinations of two or more of such memory, andsome or all of the memory may be distributed at multiple locations overthe computer network. The memory 1614 can store code, software,executables, scripts, data, content, lists, programming, programs, logor history data, user information, customer information, productinformation, and the like. While FIG. 16 illustrates the variouscomponents being coupled together via a bus, it is understood that thevarious components may actually be coupled to the control circuit and/orone or more other components directly.

In some embodiments, the control circuit 102 may determine and/orcalculate a correlation vector between each color distribution mapassociated with each human and a color distribution map associated witheach stored/existing/reference human in the database 106. To illustrate,FIG. 17 is a simplified illustration of an exemplary matchingoptimization 1700 of detected human with stored/existing/referencehumans in accordance with some embodiments. By one approach, thematching optimization 1700 may correspond to the matching optimization122 of FIG. 1. By another approach, each correlation vector calculatedbetween each color distribution map associated with each human and acolor distribution map associated with each stored/existing/referencehuman may correspond to the matching vector 912 of FIG. 9. Toillustrate, a 1^(st) detected human 1702, a 2^(nd) detected human 1712,and a Nth detected human 1704 are shown in FIG. 17. In an illustrativenon-limiting example, each corresponding set of body parts associatedwith each detected human and each stored/existing/reference human inFIG. 17 is a set of body parts that may have been determined based onthe key body joints detection 110 and/or the segmentation of key bodyjoints 112 associated with a human in an image captured by the camera104. In some embodiments, a 1^(st) existing human 1706, a 2^(nd)existing human 1708, and a Nth existing human 1710 are stored in thedatabase 106.

By one approach, the control circuit 102 may determine and/or calculatea first correlation vector between a color distribution map associatedwith the 1^(st) detected human 1702 and a color distribution mapassociated with the 1^(st) existing human 1706. By another approach, thecontrol circuit 102 may determine and/or calculate a second correlationvector between the color distribution map associated with the 1^(st)detected human 1702 and a color distribution map associated with the2^(nd) existing human 1708. By another approach, the control circuit 102may determine and/or calculate a third correlation vector between thecolor distribution map associated with the 1^(st) detected human 1702and a color distribution map associated with the 2^(nd) existing human1708. Similarly, a corresponding correlation vector maybe determinedand/or calculated for the 2^(nd) detected human 1712 and each of the1^(st) existing human 1706, the 2^(nd) existing human 1708, and the Nthexisting human 1710. In some embodiments, another correspondingcorrelation vector maybe determined and/or calculated for the Nthdetected human 1704 and each of the 1^(st) existing human 1706, the2^(nd) existing human 1708, and the Nth existing human 1710. In someembodiments, in response to determining a correlation vector, thecontrol circuit 102 may determine whether each of the correlation valuesin the correlation vector is at least equal to and/or greater than acorrelation threshold to determine that a detected human in a currentimage is the same human as the stored/existing/reference human of aprevious image. For example, the correlation threshold may include apredetermined value indicating a high likelihood that the comparedand/or matched body parts are the same body part belonging to aparticular human. Thus, enabling the control circuit 102 to track one ormore humans from one image to another image. Alternatively or inaddition to, the control circuit 102 may determine whether a thresholdnumber of the correlation values in the correlation vector is at leastequal to the correlation threshold to determine that a detected human inthe current image is the same human in the previous image.

For example, in response to the determination of the first correlationvector, the second correlation vector, and the third correlation vector,the control circuit 102 may determine which one of the correlationvectors has correlation values that is at least equal to and/or greaterthan the correlation threshold to determine whether there is a matchedbetween the compared humans. Alternatively or in addition to, inresponse to the determination of the first correlation vector, thesecond correlation vector, and the third correlation vector, the controlcircuit 102 may determine which one of the correlation vectors has athreshold number of the correlation values that are at least equal tothe correlation threshold to determine whether there is a matchedbetween the compared humans.

Continuing the illustrative non-limiting example in FIG. 17, the controlcircuit 102 may determine that the 1^(st) detected human 1702 matcheswith the 2^(nd) existing human 1708 based on at least one of: thedetermination that each of the correlation values in the secondcorrelation vector is at least equal to and/or greater than thecorrelation threshold and the determination that the second correlationvector has a threshold number of the correlation values that are atleast equal to the correlation threshold. As shown in FIG. 17, thecontrol circuit 102 may determine that the 2^(nd) detected human 1712matches with the Nth existing human 1710 while the Nth detected human1704 matches with the 1^(st) existing human 1706 based on adetermination that each of these matches corresponds to a correspondingcorrelation vector having each of its correlation values being at leastequal to and/or greater than a correlation threshold. Alternatively orin addition to, the control circuit 102 may determine that the 2^(nd)detected human 1712 matches with the Nth existing human 1710 while theNth detected human 1704 matches with the 1^(st) existing human 1706based on a determination that each of these matches corresponds to acorresponding correlation vector having a threshold number of itscorrelation values being at least equal to the correlation threshold.

In some embodiments, in determining whether a detected human in thecurrent image is the same human in the previous image, the controlcircuit 102 may initially calculate a correlation vector between eachdetected human and each existing human as shown in step 1714. In someembodiments, in the step 1714, the control circuit 102 may determinewhich of those calculated vectors have each of their correspondingcorrelation values being at least equal to and/or greater than thecorrelation threshold. In response, the control circuit 102 maydetermine that a detected human may match with one or more existinghumans as shown in step 1716. For example, the 1^(st) detected human1702 may match with the 1^(st) existing human 1706 and the 2^(nd)existing human 1708. In some embodiments, in response to determiningthat a detected human matches with more than one existing human, thecontrol circuit 102 may determine which one of the matched existinghumans has a correlation vector that has the most number of correlationvalues relative to the other matched existing humans. In an illustrativenon-limiting example, the first correlation vector between the 1^(st)detected human 1702 and the 1^(st) existing human 1706 may include fourcorrelation values. In another illustrative non-limiting example, thesecond correlation vector between the 1^(st) detected human 1702 and the2^(nd) existing human 1708 may include six correlation values. In suchexamples, the control circuit 102 may determine that the 1^(st) detectedhuman 1702 is the same human as the 2^(nd) existing human 1708 as shownin step 1718.

In yet some embodiments, in response to determining that a detectedhuman matches with more than one existing human, the control circuit 102may determine the sum of the correlation values for each of the matchedexisting humans. In response, to determine which one of the matchedexisting humans is the same as the detected human, the control circuit102 may determine which one of the matched existing humans has acorrelation vector that has a greater sum value of correlation valuesrelative to the other sum value of correlation values of the othermatched existing humans. In an illustrative non-limiting example, thefirst correlation vector between the 1^(st) detected human 1702 and the1^(st) existing human 1706 may have a sum value that is less than a sumvalue of the correlation values of the second correlation vector betweenthe 1^(st) detected human 1702 and the 2^(nd) existing human 1708. Inresponse, the control circuit 102 may determine that the 1^(st) detectedhuman 1702 is the same human as the 2^(nd) existing human 1708 as shownin step 1718.

The systems and methods described herein can be configured to complywith privacy requirements which may vary between jurisdictions. Forexample, before any recording, collection, capturing or processing ofuser images, a “consent to capture” process may be implemented. In sucha process, consent may be obtained, from the user, via a registrationprocess for example. Part of the registration process may be to ensurecompliance with the appropriate privacy laws for the location where theservice would be performed. The registration process may include certainnotices and disclosures made to the user prior to the user recording theuser's consent. No unauthorized collection or processing of images ofindividuals occurs via exemplary systems and methods. The systems andmethods described herein capture images of a user (e.g., a customerand/or an associate) and not biometric data associated with the user.

In some embodiments, after registration, and before collection orprocessing of captured images of the user occurs, a verification of theuser as registered with the system and providing the required consentscan occur. That is, the user's registration status as having consentedto the collection of captured images can be verified prior to collectingany image data. This verification can take place, for example, by theuser entering a PIN (Personal Identification Number), password, or othercode into a keypad or keyboard; by the user entering into a limitedgeofence location while carrying a fob, mobile device (such as asmartphone), or other RF transmitter, where the device has beenconfigured to broadcast an authorization signal.

In some embodiments, once consent is verified, captured images of theuser can be captured, processed and used. In some embodiments, absentverification of consent, the camera, sensor, or other image datacollection system must remain turned off In some embodiments, onceconsent is verified, the camera sensor or other image data collectionsystem may be activated or turned on. In some embodiments, if any imagedata is inadvertently collected from the user prior to verification ofconsent it is immediately deleted, not having been saved to disk.

In some embodiments, any image data captured as part of the verificationprocess is handled and stored by a single party at a single location. Insome embodiments, where data must be transmitted to an offsite locationfor verification, certain disclosures prior to consent may be required,and the image data is encrypted. In some embodiments, the hashing of theimage data received is a form of asymmetrical encryption which improvesboth data security and privacy, as well as reducing the amount of datawhich needs to be communicated.

In some embodiments, biometrica data, personal characteristics, traits,identifications, and/or the like are not determined by the controlcircuit 102 nor stored in the database 106. As such, any captured imagesdescribed herein do not specifically identify humans in the image.Instead, the humans are generically detected in the captured images andthat the control circuit 102 may also determine that the genericallydetected humans in the captured images are also generically detected inone or more subsequent captured images.

Several embodiments are described herein. For example, in someembodiments, a system is provided for automatic identification of aretail associate on an image captured by a camera via analysis of colordistribution maps associated with aggregate pixels of each body part ofa detected human in the captured image at an area of a retail store. Thesystem comprising: a camera configured to capture, at a first time, afirst image of an area at a retail store; and a control circuit coupledto the camera. The control circuit configured to receive the firstimage; detect a plurality of key body joints for each human captured onthe first image, where each of the plurality of key body joints is apoint of interest along a human skeletal anatomy; in response to thedetection of the plurality of key body joints, determine segmentationsof the plurality of key body joints to determine one or more body partsof a corresponding human; determine a color distribution map ofaggregate pixels associated with each body part of the one or more bodyparts of the corresponding human on the first image, where each colordistribution map is used by the control circuit to differentiate betweenone human from another human in the first image; calculate, for eachhuman in the first image, a correlation value for each colordistribution map associated with each body part of the correspondinghuman on the first image with a stored color distribution map for eachbody part of a reference retail associate to identify whether thecorresponding human is a retail associate of the retail store; anddetermine that the corresponding human in the first image is the retailassociate of the retail store based on at least one of: a determinationthat each calculated correlation value is equal to at least acorrelation threshold and a determination that a threshold number ofcalculated correlation values is equal to at least the correlationthreshold. The control circuit is further configured to determine acount of humans that are not identified as one of retail associates ofthe retail store based on the determination that one or more ofcorresponding calculated correlation values are not equal to at leastthe correlation threshold; and in response to the count reaching a countthreshold, provide an alert message to an electronic device associatedwith the retail store indicating that the area is currently experiencinga high volume of customer traffic and summoning an additional retailassociate to the area, where the retail associate is distinguished fromthe additional retail associate based on a determination of a length oftime each has spent proximate the area.

In some embodiments, the area at the retail store comprises an exit andan entrance. In some embodiments, the camera comprises a closed-circuittelevision camera. In some embodiments, the one or more body partscomprise a pair of feet, a head, a hand, a hip, a pair of arms, a torso,a pair of thighs, a pair of entire legs, a neck, a pair of forearms, aback, and a shoulder. In some embodiments, the control circuit isfurther configured to represent the color distribution map as a colorhistogram. In some embodiments, the control circuit is furtherconfigured to determine whether the retail associate is engaged in aparticular activity based on a determination of an angle between atleast two of a thigh, a leg, a hand, and a back of the one or more bodyparts of the retail associate; and in response to the determination thatthe retail associate is engaged in the particular activity, provide amessage to an electronic device associated with another retail associateof the retail store indicating that the retail associate is engaged inthe particular activity. In some embodiments, the particular activitycomprises sitting while interacting with a customer. In someembodiments, the control circuit is further configured to determine anamount of time the retail associate is engaged in the particularactivity over a period of time; and provide an activity reportcomprising the amount of time the retail associate is engaged in theparticular activity over the period of time. In some embodiments, thecontrol circuit is further configured to determine a count of humansthat are not identified as one of retail associates of the retail storebased on the determination that one or more of corresponding calculatedcorrelation values are not equal to at least the correlation threshold,where the humans that are not identified as one of the retail associatesare identified as customers; and determine an amount of time eachcustomer spent standing proximate the area prior to leaving the retailstore to determine an average customer wait time. And, in someembodiments, the determination of segmentations of the plurality of keybody joints of the corresponding human is based on Part Affinity Field(PAF) mapping.

In some embodiments, a method is provided for automatic identificationof a retail associate on an image captured by a camera via analysis ofcolor distribution maps associated with aggregate pixels of each bodypart of a detected human in the captured image at an area of a retailstore. The method includes capturing, at a first time by a camera, afirst image of an area at a retail store; receiving, by a controlcircuit coupled to the camera, the first image; detecting, by thecontrol circuit, a plurality of key body joints for each human capturedon the first image, where each of the plurality of key body joints is apoint of interest along a human skeletal anatomy; in response to thedetection of the plurality of key body joints, determining segmentationsof the plurality of key body joints to determine one or more body partsof a corresponding human; determining, by the control circuit, a colordistribution map of aggregate pixels associated with each body part ofthe one or more body parts of the corresponding human on the firstimage, wherein each color distribution map is used by the controlcircuit to differentiate between one human from another human in thefirst image; calculating, by the control circuit and for each human inthe first image, a correlation value for each color distribution mapassociated with each body part of the corresponding human on the firstimage with a stored color distribution map for each body part of areference retail associate to identify whether the corresponding humanis a retail associate of the retail store; and determining, by thecontrol circuit, that the corresponding human in the first image is theretail associate of the retail store based on at least one of: adetermination that each calculated correlation value is equal to atleast a correlation threshold and a determination that a thresholdnumber of calculated correlation values is equal to at least thecorrelation threshold.

In some embodiments, the method further includes determining, by thecontrol circuit, a count of humans that are not identified as one ofretail associates of the retail store based on the determination thatone or more of corresponding calculated correlation values are not equalto at least the correlation threshold; and in response to the countreaching a count threshold, providing, by the control circuit, an alertmessage to an electronic device associated with the retail storeindicating that the area is currently experiencing a high volume ofcustomer traffic and summoning an additional retail associate to thearea, wherein the retail associate is distinguished from the additionalretail associate based on a determination of a length of time each hasspent proximate the area. In some embodiments, the area at the retailstore comprises an exit and an entrance. In some embodiments, the cameracomprises a closed-circuit television camera. In some embodiments, theone or more body parts comprise a pair of feet, a head, a hand, a hip, apair of arms, a torso, a pair of thighs, a pair of entire legs, a neck,a pair of forearms, a back, and a shoulder. In some embodiments, themethod further comprises representing, by the control circuit, the colordistribution map as a color histogram. In some embodiments, the methodfurther comprises determining, by the control circuit, whether theretail associate is engaged in a particular activity based on adetermination of an angle between at least two of a thigh, a leg, ahand, and a back of the one or more body parts of the retail associate;and in response to the determination that the retail associate isengaged in the particular activity, providing, by the control circuit, amessage to an electronic device associated with another retail associateof the retail store indicating that the retail associate is engaged inthe particular activity. In some embodiments, the particular activitycomprises sitting while interacting with a customer. In someembodiments, the method further comprises determining, by the controlcircuit, an amount of time the retail associate is engaged in theparticular activity over a period of time; and providing, by the controlcircuit, an activity report comprising the amount of time the retailassociate is engaged in the particular activity over the period of time.In some embodiments, the method further comprises determining, by thecontrol circuit, a count of humans that are not identified as one ofretail associates of the retail store based on the determination thatone or more of corresponding calculated correlation values are not equalto at least the correlation threshold, wherein the humans that are notidentified as one of the retail associates are identified as customers;and determining, by the control circuit, an amount of time each customerspent standing proximate the area prior to leaving the retail store todetermine an average customer wait time. And in some embodiments, thedetermination of segmentations of the plurality of key body joints ofthe corresponding human is based on Part Affinity Field (PAF) mapping.

Those skilled in the art will recognize that a wide variety of othermodifications, alterations, and combinations can also be made withrespect to the above described embodiments without departing from thescope of the invention, and that such modifications, alterations, andcombinations are to be viewed as being within the ambit of the inventiveconcept.

What is claimed is:
 1. A system for detecting and tracking humans fromone image to another image captured by a camera at a retail store, thesystem comprising: a camera configured to capture, at a first time, afirst image of an area at a retail store; a control circuit coupled tothe camera, the control circuit configured to: receive the first image;detect a plurality of key body joints of a first human captured on thefirst image, wherein each of the plurality of key body joints is a pointof interest along a skeletal anatomy of the first human; in response tothe detection of the plurality of key body joints, determinesegmentations of the plurality of key body joints of the first human todetermine one or more body parts of the first human; determine a colordistribution map of aggregate pixels associated with each body part ofthe one or more body parts of the first human on the first image,wherein each color distribution map is used by the control circuit todifferentiate between the first human and another human in the firstimage; and cause a database to store the color distribution map for eachbody part of the first human on the first image; and the databasecoupled to the control circuit, the database comprising one or morecolor distribution map sets each associated with a detected human in acaptured image of the camera.
 2. The system of claim 1, wherein the areaat the retail store comprises an exit, an entrance, an aisle, a bakeryarea, a frozen area, a customer service area, a food area, a producearea, a meat area, and a refrigerated area.
 3. The system of claim 1,wherein the camera comprises a closed-circuit television camera.
 4. Thesystem of claim 1, wherein the one or more body parts comprise a pair offeet, a head, a hand, a hip, a pair of arms, a torso, a pair of thighs,a pair of entire legs, a neck, a pair of forearms, and a shoulder. 5.The system of claim 1, wherein the control circuit is further configuredto represent the color distribution map as a color histogram.
 6. Thesystem of claim 1, wherein the camera is further configured to capture,at a second time, a second image of the area, and wherein the controlcircuit is further configured to: receive the second image; determine acolor distribution map of aggregate pixels associated with each bodypart of one or more body parts of a second human on the second image;calculate a correlation value for each color distribution map associatedwith each body part of the first human with each color distribution mapassociated with each corresponding body part of the second human; anddetermine that the first human in the first image is the second human inthe second image based on at least on of: a determination that eachcalculated correlation value is equal to at least a correlationthreshold and a determination that a threshold number of calculatedcorrelation values is equal to at least the correlation threshold. 7.The system of claim 6, wherein the control circuit is further configuredto cause the database to update a previously stored color distributionmap sets associated with the first human by combining the previouslystored color distribution map sets with another color distribution mapsets of the second human in the second image in response to thedetermination that the first human in the first image is the secondhuman in the second image.
 8. The system of claim 6, wherein the controlcircuit is further configured to: determine that the first human in thefirst image is not the second human in the second image based on adetermination that one or more of each calculated correlation value isnot equal to at least the correlation threshold; and cause the databaseto store a color distribution map for each body part of the second humanon the second image, wherein the color distribution map associated withthe second human is used to identify whether the second human isdetected in a third image of the area captured by the camera.
 9. Thesystem of claim 1, wherein the control circuit is further configured to:calculate a correlation value for each color distribution map associatedwith each body part of the first human on the first image with a storedcolor distribution map for each body part of a reference retailassociate to identify whether the first human is a retail associate ofthe retail store; and determine that the first human in the first imageis the retail associate of the retail store based on at least one of: adetermination that each calculated correlation value is equal to atleast a correlation threshold and a determination that a thresholdnumber of calculated correlation values is equal to at least thecorrelation threshold.
 10. The system of claim 9, wherein the controlcircuit is further configured to: determine a count of humans that arenot identified as one of retail associates of the retail store; and inresponse to the count reaching a count threshold, provide an alertmessage to an electronic device associated with the retail store,wherein the alert message summons another retail associate to the area.11. The system of claim 1, wherein the determination of segmentations ofthe plurality of key body joints of the first human is based on PartAffinity Field (PAF) mapping.
 12. A method for detecting and trackinghumans from one image to another image captured by a camera at a retailstore, the method comprising: capturing, at a first time by a camera, afirst image of an area at a retail store; receiving, by a controlcircuit coupled to the camera, the first image; detecting, by thecontrol circuit, a plurality of key body joints of a first humancaptured on the first image, wherein each of the plurality of key bodyjoints is a point of interest along a skeletal anatomy of the firsthuman; in response to the detection of the plurality of key body joints,determining segmentations of the plurality of key body joints of thefirst human to determine one or more body parts of the first human;determining, by the control circuit, a color distribution map ofaggregate pixels associated with each body part of the one or more bodyparts of the first human on the first image, wherein each colordistribution map is used by the control circuit to differentiate betweenthe first human and another human in the first image; and causing, bythe control circuit, a database to store the color distribution map foreach body part of the first human on the first image, wherein thedatabase comprises one or more color distribution map sets eachassociated with a detected human in a captured image of the camera. 13.The method of claim 12, wherein the area at the retail store comprisesan exit, an entrance, an aisle, a bakery area, a frozen area, a customerservice area, a food area, a produce area, a meat area, and arefrigerated area.
 14. The method of claim 12, wherein the cameracomprises a closed-circuit television camera.
 15. The method of claim12, wherein the one or more body parts comprise a pair of feet, a head,a hand, a hip, a pair of arms, a torso, a pair of thighs, a pair ofentire legs, a neck, a pair of forearms, and a shoulder.
 16. The methodof claim 12, further comprising representing, by the control circuit,the color distribution map as a color histogram.
 17. The method of claim12, further comprising: capturing, at a second time by the camera, asecond image of the area; receiving, by the control circuit, the secondimage; determining, by the control circuit, a color distribution map ofaggregate pixels associated with each body part of one or more bodyparts of a second human on the second image; calculating, by the controlcircuit, a correlation value for each color distribution map associatedwith each body part of the first human with each color distribution mapassociated with each corresponding body part of the second human; anddetermining, by the control circuit, that the first human in the firstimage is the second human in the second image based on at least one of:a determination that each calculated correlation value is equal to atleast a correlation threshold and a determination that a thresholdnumber of calculated correlation values is equal to at least thecorrelation threshold.
 18. The method of claim 17, further comprisingcausing, by the control circuit, the database to update a previouslystored color distribution map sets associated with the first human bycombining the previously stored color distribution map sets with anothercolor distribution map sets of the second human in the second image inresponse to the determination that the first human in the first image isthe second human in the second image.
 19. The method of claim 17,further comprising: determining, by the control circuit, that the firsthuman in the first image is not the second human in the second imagebased on a determination that one or more of each calculated correlationvalue is not equal to at least the correlation threshold; and causing,by the control circuit, the database to store a color distribution mapfor each body part of the second human on the second image, wherein thecolor distribution map associated with the second human is used toidentify whether the second human is detected in a third image of thearea captured by the camera.
 20. The method of claim 12, furthercomprising: calculating, by the control circuit, a correlation value foreach color distribution map associated with each body part of the firsthuman on the first image with a stored color distribution map for eachbody part of a reference retail associate to identify whether the firsthuman is a retail associate of the retail store; and determining, by thecontrol circuit, that the first human in the first image is the retailassociate of the retail store based on at least one of: a determinationthat each calculated correlation value is equal to at least acorrelation threshold and a determination that a threshold number ofcalculated correlation values is equal to at least the correlationthreshold.
 21. The method of claim 20, further comprising: determining,by the control circuit, a count of humans that are not identified as oneof retail associates of the retail store; and in response to the countreaching a count threshold, providing, by the control circuit, an alertmessage to an electronic device associated with the retail store,wherein the alert message summons another retail associate to the area.22. The method of claim 12, wherein the determination of segmentationsof the plurality of key body joints of the first human is based on PartAffinity Field (PAF) mapping.